Extendible meta-interpreters
نویسندگان
چکیده
Meta-programming is a well-known technique widely used in logic programming and artificial intelligence. Meta-interpreters are powerful tools especially for writing expert systems in general and for writing their inference machines in particular. While the traditional approach to meta-interpretation is based on the syntactic definition of a meta-interpreter, new approach presented in this paper corresponds more to the meaning of the prefix meta. We analyze the structure of expert systems (problem solvers) to specify a general description of a meta-interpreter. On that basis, we define the concept of an extendible meta-interpreter. The extendible meta-interpreter is divided into two parts – the kernel and its extension. While the kernel codes the functions that are common to most interpreters, the extension specifies the domain-specific functions of a particular interpreter.
منابع مشابه
Universit a Di Pisa Veriication of Meta-interpreters Veriication of Meta-interpreters
A novel approach to the veriication of meta-interpreters is introduced. We apply a general purpose veriication method for logic programs, proposed in 28], to the case study of the Vanilla and other logic meta-interpreters. We extend the standard notion of declarative correctness, and design a criterion for proving correctness of meta-interpreters in a general sense, including amalgamated and re...
متن کاملVerification of Meta-Interpreters
A novel approach to the veriication of meta-interpreters is introduced. We apply a general purpose veriication method for logic programs, proposed in 28], to the case study of the Vanilla and other logic meta-interpreters. We extend the standard notion of declarative correctness, and design a criterion for proving correctness of meta-interpreters in a general sense, including amalgamated and re...
متن کاملApproaches to Interpreter Composition
In this paper, we compose six different Python and Prolog VMs into 4 pairwise compositions: one using C interpreters; one running on the JVM; one using meta-tracing interpreters; and one using a C interpreter and a meta-tracing interpreter. We show that programs that cross the language barrier frequently execute faster in a meta-tracing composition, and that meta-tracing imposes a significantly...
متن کاملA Program Specialiser
Meta-level compositions of object logic programs are naturally implemented by means of meta-programming techniques. Meta-interpreters deening program compositions however suuer from a computational overhead that is due partly to the interpretation layer present in all meta-programs, and partly to the speciic interpretation layer needed to deal with program compositions. We show that meta-interp...
متن کاملMega-Interpreters and Expert Systems
Meta-programming is a well-known technique widely used in logic programming and artificial intelligence. Meta-interpreters are powerful tools especially for writing expert systems in general and for writing their inference machines in particular. While the classical approach to meta-interpretation is based on the syntactic definition of a meta-interpreter, new approach presented in this paper c...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- Kybernetika
دوره 33 شماره
صفحات -
تاریخ انتشار 1997